/*
 * Copyright 2012 XueSong Guo.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package wbbs.web;

public class user extends BaseAction {


//
//    @WebParam("user.pwd")
//    public String pwd;
//
//    public String oldpwd;
//
//    @Action("register.html")
//    public Object registerPage() {
//        return new TemplateResult(this);
//    }
//
//    @Action
//    public Object register() throws SQLException {
//        if (qr.query("select sid from User where sid=?", new ScalarHandler(), user.sid) != null) {
//            return err("user.sidexist");
//        }
//        user.pwd = Utils.md5(pwd);
//        Connection con = qr.getDataSource().getConnection();
//        con.setAutoCommit(false);
//        try {
//            qr.update(con, "insert into User(sid, pwd, name, head) values(?,?,?,?)",
//                    user.sid,
//                    user.pwd,
//                    user.name,
//                    user.head);
//            user.id = ((Number) qr.query(con, "select last_insert_id()", new ScalarHandler())).intValue();
//            con.commit();
//        } catch (SQLException e) {
//            con.rollback();
//            throw e;
//        } finally {
//            con.setAutoCommit(true);
//        }
//        return ok().set("id", user.id);
//    }
//
//    @Action("profile.html")
//    public Object profile() throws SQLException {
//        Integer uid = loginService.getLoginUserId();
//        if (uid == null) {
//            return err("notlogin");
//        }
//        user = qr.query("select * from User where id=?", new ResultSetHandler<User>() {
//            @Override
//            public User handle(ResultSet rs) throws SQLException {
//                if (!rs.next()) return null;
//                User user = new User();
//                user.id = rs.getInt("id");
//                user.sid = rs.getString("sid");
//                user.pwd = rs.getBytes("pwd");
//                return user;
//            }
//        }, uid);
//        if (user == null) {
//            return err("notlogin");
//        }
//        return new TemplateResult(this);
//    }
//
//    @Action
//    public Object update() throws SQLException {
//        Integer uid = loginService.getLoginUserId();
//        if (uid == null) {
//            return err("notlogin");
//        }
//        byte[] md5 = qr.query("select pwd from User where id=?", new ResultSetHandler<byte[]>() {
//            @Override
//            public byte[] handle(ResultSet rs) throws SQLException {
//                if (!rs.next()) return null;
//                return rs.getBytes(1);
//            }
//        }, uid);
//        if (md5 == null) {
//            return err("notlogin");
//        }
//        if (!Arrays.equals(Utils.md5(oldpwd), md5)) {
//            return err("user.wrongpwd");
//        }
//        user.pwd = Utils.md5(pwd);
//        qr.update("update User set pwd=?, name=?, head=? where id=?",
//                user.pwd, user.name, user.head, uid);
//        return ok();
//    }
//
//    @Action("login.html")
//    public Object loginPage() {
//        return new TemplateResult(this);
//    }
//
//    @Action
//    public Object login() throws SQLException {
//        user = qr.query("select id, pwd from User where sid=?", new ResultSetHandler<User>() {
//            @Override
//            public User handle(ResultSet rs) throws SQLException {
//                if (!rs.next()) return null;
//                User user = new User();
//                user.id = rs.getInt(1);
//                user.pwd = rs.getBytes(2);
//                return user;
//            }
//        }, user.sid);
//        if (user == null) {
//            return err("user.wrongsid");
//        }
//        if (!Arrays.equals(Utils.md5(pwd), user.pwd)) {
//            return err("user.wrongpwd");
//        }
//        loginService.setLoginUserId(user.id);
//        return ok();
//    }
}
